package com.woniu.bh.backstage.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.woniu.bh.backstage.dto.ManagerDto;
import com.woniu.bh.backstage.dto.PageResult;
import com.woniu.bh.backstage.param.AddManagerParam;
import com.woniu.bh.backstage.param.ManagerParam;
import com.woniu.bh.backstage.param.ModifyPwdParam;
import com.woniu.bh.common.core.domain.backstage.Manager;
import com.woniu.bh.common.core.dto.ResultDto;
import com.woniu.bh.common.core.exception.ProjectExceptionResult;

import java.util.Date;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author cxb
 * @since 2020-10-13
 */
public interface IManagerService extends IService<Manager> {
    /*
    登陆
     */
    public ResultDto login(ManagerParam managerParam);
    /*
    查询管理员是否禁用
     */
    public boolean isForbidden(String name);
    /*
    根据手机号获取验证码
     */
    public String getVerifyCode(String phone);
    /*
    根据手机号查询用户
     */
    public ManagerDto selectByPhone(String phone);
    /*
    修改管理员密码
     */
    public void modifyPwd(ModifyPwdParam modifyPwdParam);
    /*
    根据管理员id查询信息
     */
    public ManagerDto selectManagerById(Integer id);
    /*
    查询并返回分页结果
       */
    public IPage<ManagerDto> selectPage(Integer pageIndex, Integer pageSize, Integer managerStatus, long dateAfter, long dateBefore);
    /*
    根据id冻结管理员
     */
    public ManagerDto freezeManager(Integer id);
    /*
    根据id冻解冻管理员
     */
    public ManagerDto unFreezeManager(Integer id);
    /*
    新增管理员
     */
    public ResultDto addManager(AddManagerParam addManagerParam);

}
